// 加载express模块
const express = require('express')

// 加载jwt模块
const jwt = require('jsonwebtoken')

// 加载jwt加密密匙
const key = require('./jwt')

// 加载CORS模块
const cors = require('cors')

// 创建服务器实例
const app = express()

// 使用CORS中间件
app.use(cors({
    origin: '*'
}))

// 引入解析请求体的中间件
app.use(express.urlencoded({ extended: true }))


// 引入解析json格式请求体的中间件
app.use(express.json())

// // 引入登录路由
// const loginRouter = require('./route/login')
// app.use('/login', loginRouter)

// // 检测登陆状态中间件
// app.use((req, res,next) => {
//     try {
//         // 读取请求头
//         const token = req.get('Authorization')
//         const decodeToken = jwt.verify(token, key)
//         next()
//     } catch (e) {
//         console.log(e);
//         return res.send({
//             status:400,
//             message:'token无效'
//         })
//     }
// })

// 引入articleRouter路由
const articleRouter = require('./route/article')
// 引入DECRouter路由 装修页面
const DecRouter = require('./route/decoration')

// 使用articleRouter路由
app.use('/article', articleRouter)
app.use('/decoration', DecRouter)


// 静态资源托管public目录
app.use(express.static('public'))

// 错误处理中间件
app.use((err, req, res, next) => {
    // 查看错误信息(后台cmd查看)
    console.log(err);
    // 响应500和返回响应信息
    res.status(500).send({
        code: 500,
        msg: "服务器端错误"
    })
})

// 指定服务器实例监听的端口号 
app.listen(3000, () => {
    console.log('服务器启动了');
})